$(function(){
	 
});



/*************************************小工具***************************************************/

/**
 * 是否为空
 */
function isNull(obj) {
	if (obj == null || obj == '' || typeof(obj)=="undefined") {
		return true;
	}else {
		return false;
	}
}

/**
 * 得到性别
 */
function getSexName(logic) {
	if (logic == 0 || logic == "0" || logic == false) {
		return "女";
	}
	return "男";
}

/**
 * 时间转换:('YYYY-MM-DD HH:mm:ss')
 */
function getDefaultTime(time) {
	var result = moment(time).format('YYYY-MM-DD HH:mm:ss');
	return result;
}


/**
 * 表单reset(),包括输入数据、效验样式
 * @param formId 表单id，(注意带有#)
 */
function formReset(formId) {
	//数据还原
	$(formId)[0].reset();
	
	//效验提示还原
	//。children()只往下找一级，而find()找到最里面 
	//$('li.item-ii').find('li') 等价于 $('li', 'li.item-ii')。
	$("label.error", formId).remove();//使用validate默认的样式产生的label
	$("i.my-tip-i", formId).remove();//自己定义的效验样式提示
	$("label.my-tip-label", formId).remove();//自己定义的效验样式提示
	
	//默认的样式输入的input框有可能是error
	$("*", formId).each(function(){
		$(this).removeClass("error has-success has-error");
	});
	
}

/**
 * 效验提示label标签reset(),添加新样式之前应该删掉老样式
 * @param input 输入框标签jq对象
 */
function labelReset(input) {
	var parent = input.parent().parent();
	parent.find("label.my-tip-label").remove();
	parent.find("label.error").remove();
	parent.find("i.my-tip-i").remove();
	
	//默认的样式输入的input框有可能是error
	parent.find("*").each(function(){
		$(this).removeClass("error");
	});
	
	parent.removeClass("has-success has-error");
	
}


/***********************************与数据库相关的***********************************************/
/**
 * 通过id得到名字
 */
function getColumnNameByIdAndTbName(id, columnName, tbName) {
	var resultName = '';
	//console.log("common.js:id="+id+"----columnName="+columnName+"----tbName="+tbName);
	if (isNull(id) || isNull(columnName) || isNull(tbName)) {
		alert("内部错误，common.js文件中getColumnNameByIdAndTbName方法参数不得为空！");
		return null;
	}
	$.ajax({
		url: "../common/getColumnNameByIdAndTbName.action",
		type: "post",
		async: false,
		data: {"id":id, "columnName":columnName, "tbName":tbName},
		success: function(data) {
			resultName = data;
		},
		error: function() {
			toastr.error("获取字段名发生错误，请联系管理员");
		}
	});
	return resultName;
}
/***********************************与用户有关的公共业务方法*******************************************/
function getUserNameById(id) {
	//用户id获取用户名
	var userName = null;
	$.ajax({
		url: "../user/getUserNameById.action",
		type: "post",
		data: {"id":id},
		async: false,//是为了数据能递出去
		success: function(data) {
			userName = data;
		},
		error: function() {
			toastr.error("获取角色创建人信息出错，请联系管理员");
		}
	});
	return userName;
}


/***********************************与角色有关的公共业务方法*****************************************/


/**
 * 通过角色id返回角色名
 */
function getRoleNamebyId(roleId) {
	if (isNull(roleId)) {
		return;
	}
	var result = '';
	$.ajax({
		url: "../role/getRoleById.action",
		type: "post",
		data: {"id":roleId},
		async: false,
		success: function(role) {
			result = role.roleName;
		},
		error: function() {
			toastr.error("获取角色信息发生错误，请联系管理员");
		}
	});
	return result;
}
/**
 * 得到用户所拥有的角色
 * @param userId 用户id值
 * @returns {___anonymous_result} 所拥有的角色(以逗号(,)分隔拼接)
 */
function getUserRoleNames(userId) {
	var result = '';
	$.ajax({
		url: "../userRole/getUserRoles.action",
		type: "post",
		data: {"userId":userId},
		async: false,
		success: function(userRoles) {
			var roleNames = '';
			$(userRoles).each(function(){
				//console.log(this);
				roleNames += getColumnNameByIdAndTbName(this.roleId,'role_name','tb_role') + ',';
			});
			result = roleNames.substring(0,roleNames.length-1);
		},
		error: function() {
			toastr.error("获取员工角色发生错误，请联系管理员");
		}
	});
	return result;
}

/**
 * 得到用户所拥有的角色的id
 * @param userId 用户id
 * @returns {___anonymous_result} 所拥有的角色id(以逗号(,)分隔拼接)
 */
function getUserRoleIds(userId) {
	var result = '';
	$.ajax({
		url: "../userRole/getUserRoles.action",
		type: "post",
		data: {"userId":userId},
		async: false,
		success: function(userRoles) {
			var roleNames = '';
			$(userRoles).each(function(){
				roleNames += this.roleId + ',';
			});
			result = roleNames.substring(0,roleNames.length-1);
		},
		error: function() {
			toastr.error("获取员工角色发生错误，请联系管理员");
		}
	});
	return result;
}


/***************************************index专门用的，不用管******************************************/
function getRoleNames(userId) {
	var result = '';
	$.ajax({
		url: "userRole/getUserRoles.action",
		type: "post",
		data: {"userId":userId},
		async: false,
		success: function(userRoles) {
			var roleNames = '';
			$(userRoles).each(function(){
				//console.log(this);
				roleNames += getColumnName(this.roleId,'role_name','tb_role') + ',';
			});
			result = roleNames.substring(0,roleNames.length-1);
		},
		error: function() {
			toastr.error("获取员工角色发生错误，请联系管理员");
		}
	});
	return result;
}

/**
 * 通过id得到名字
 */
function getColumnName(id, columnName, tbName) {
	var resultName = '';
	//console.log("common.js:id="+id+"----columnName="+columnName+"----tbName="+tbName);
	if (isNull(id) || isNull(columnName) || isNull(tbName)) {
		alert("内部错误，common.js文件中getColumnNameByIdAndTbName方法参数不得为空！");
		return null;
	}
	$.ajax({
		url: "common/getColumnNameByIdAndTbName.action",
		type: "post",
		async: false,
		data: {"id":id, "columnName":columnName, "tbName":tbName},
		success: function(data) {
			resultName = data;
		},
		error: function() {
			toastr.error("获取字段名发生错误，请联系管理员");
		}
	});
	return resultName;
}
